It is often necessary to install software on a remote computer system. However, a remote computer system may not have a convenient User Interface (UI) runtime (e.g., IBM z/OS servers). Thus, a typical installation program will not run since it cannot display a UI to query a user's selections and choices for the software installation.
One solution is to have a command line installation program which will execute a response file and run the installation. However, this approach can be error prone and is not a pleasant user experience. Further, this approach does not provide any UI to clarify errors or problem conditions.
Another solution is to have an installation UI run on one computer system, which interacts with the user and which communicates a resulting response file to a non-UI installation program on a remote computer system. This approach involves significant communications programming on both ends, and still suffers from a single response file interaction with the remote installation agent and installer. In addition, progress information and post-install interactions are extremely difficult to implement.
These solutions also may expose a system to a security risk, for example, by creating security holes in the remote computer system during or after software installation.